﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RFMS;

namespace BU
{
    public class Tafel
    {
        private ModelRFMSContainer _container;
        public Tafel()
        {
            _container = ModelRFMSContainer.GetInstance();
        }

        public void Toevoegen(string naam, int x, int y)
        {
            _container.TafelSet.AddObject(RFMS.Tafel.CreateTafel(0,naam,x,y,true));
            _container.SaveChanges();
        }

        public void Verwijderen(string naam)
        {
            var tafel = _container.TafelSet.FirstOrDefault(p => p.Naam == naam);
            tafel.Actief = false;
            _container.SaveChanges();
        }

        public void Wijzigen(string naam, int x, int y)
        {
            var tafel = _container.TafelSet.FirstOrDefault(p => p.Naam == naam);
            tafel.Naam = naam;
            tafel.X = x;
            tafel.Y = y;
            _container.SaveChanges();
        }

        public List<List<string>> LijstVanTafels()
        {
            var tafels = from t in _container.TafelSet
                              where t.Actief == true
                              select t;

            var lijst = new List<List<string>>();

            foreach (var tafel in tafels)
            {
                lijst.Add(new List<string> { tafel.TafelId.ToString(), tafel.Naam, tafel.X.ToString(), tafel.Y.ToString() });
            }

            return lijst;
        }

        public string Naam { get; set; }
        public int X { get; set; }
        public string Y { get; set; }
        public bool Actief { get; set; }      
    }
}
